#ifndef OPENCVTRAITS_H_INCLUDED
#define OPENCVTRAITS_H_INCLUDED

template<int Depth>
struct OpenCVTrait
{
	typedef Depth PixelDepth;
};


template<>
struct OpenCVTrait<IPL_DEPTH_8U>
{
	typedef uchar PixelDepth;
};

template<>
struct OpenCVTrait<IPL_DEPTH_8S>
{
	typedef char PixelDepth;
};

template<>
struct OpenCVTrait<IPL_DEPTH_16U>
{
	typedef unsigned short PIxelDepth;
};

template<>
struct OpenCVTrait<IPL_DEPTH_16S>
{
	typedef short PIxelDepth;
};


template<>
struct OpenCVTrait<IPL_DEPTH_32F>
{
	typedef double PIxelDepth;
};

template<>
struct OpenCVTrait<IPL_DEPTH_32U>
{
	typedef int PIxelDepth;
};

template<>
struct OpenCVTrait<IPL_DEPTH_32S>
{
	typedef int PIxelDepth;
};



#endif // OPENCVTRAITS_H_INCLUDED
